//package com.wnhz.work.yz.utils;
//
//import android.graphics.Bitmap;
//import android.graphics.BitmapFactory;
//import android.graphics.Matrix;
//import android.media.ExifInterface;
//
//import java.io.File;
//import java.io.FileOutputStream;
//import java.io.IOException;
//
//import static com.lidroid.xutils.bitmap.core.BitmapDecoder.calculateInSampleSize;
//
///**
// * @author 作者 zxb:
// * @date 2016/10/28 0028
// * @Description  图片压缩的工具类
// */
//public class CompressImageUtils {
//
//    /**
//     *
//     * @param filePath  ----原图片文件路径
//     * @param targetPath----压缩之后的图片路径
//     * @param quality-------压缩的质量
//     * @return
//     */
//
//    public static String compressImage(String filePath, String targetPath, int quality) {
//        Bitmap bm = getSmallBitmap(filePath);//获取一定尺寸的图片
//        int degree = readPictureDegree(filePath);//获取相片拍摄角度
//        if (degree != 0) {//旋转照片角度，防止头像横着显示
//            bm = rotateBitmap(bm, degree);
//        }
//        File outputFile = new File(targetPath);
//        try {
//            if (!outputFile.exists()) {
//                outputFile.getParentFile().mkdirs();
//                //outputFile.createNewFile();
//            } else {
//                outputFile.delete();
//            }
//            FileOutputStream out = new FileOutputStream(outputFile);
//            bm.compress(Bitmap.CompressFormat.JPEG, quality, out);
//        } catch (Exception e) {
//        }
//        return outputFile.getPath();
//    }
//
//    /**
//     * 根据路径获得图片信息并按比例压缩，返回bitmap
//     */
//    public static Bitmap getSmallBitmap(String filePath) {
//        final BitmapFactory.Options options = new BitmapFactory.Options();
//        options.inJustDecodeBounds = true;//只解析图片边沿，获取宽高
//        BitmapFactory.decodeFile(filePath, options);
//        // 计算缩放比
//        options.inSampleSize = calculateInSampleSize(options, 480, 800);
//        // 完整解析图片返回bitmap
//        options.inJustDecodeBounds = false;
//        return BitmapFactory.decodeFile(filePath, options);
//    }
//
//
//    /**
//     * 获取照片角度
//     *
//     * @param path
//     * @return
//     */
//    public static int readPictureDegree(String path) {
//        int degree = 0;
//        try {
//            ExifInterface exifInterface = new ExifInterface(path);
//            int orientation = exifInterface.getAttributeInt(
//                    ExifInterface.TAG_ORIENTATION,
//                    ExifInterface.ORIENTATION_NORMAL);
//            switch (orientation) {
//                case ExifInterface.ORIENTATION_ROTATE_90:
//                    degree = 90;
//                    break;
//                case ExifInterface.ORIENTATION_ROTATE_180:
//                    degree = 180;
//                    break;
//                case ExifInterface.ORIENTATION_ROTATE_270:
//                    degree = 270;
//                    break;
//            }
//        } catch (IOException e) {
//            e.printStackTrace();
//        }
//        return degree;
//    }
//
//    /**
//     * 旋转照片
//     *
//     * @param bitmap
//     * @param degress
//     * @return
//     */
//    public static Bitmap rotateBitmap(Bitmap bitmap, int degress) {
//        if (bitmap != null) {
//            Matrix m = new Matrix();
//            m.postRotate(degress);
//            bitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(),bitmap.getHeight(), m, true);
//            return bitmap;
//        }
//        return bitmap;
//    }
//}
